package com.leetCode.ListNodeDemo;

public class DeleteDuplicatesDemo {
    public static void main(String[] args) {
        ListNode listNode = new ListNode(1,new ListNode(1,new ListNode(2,new ListNode(3,new ListNode(3)))));
        System.out.println(deleteDuplicates(listNode));
    }

    /**
     * 给定一个已排序的链表的头 head ， 删除所有重复的元素，使每个元素只出现一次 。返回 已排序的链表 。
     *
     *
     *
     * 示例 1：
     *
     *
     * 输入：head = [1,1,2]
     * 输出：[1,2]
     * 示例 2：
     *
     *
     * 输入：head = [1,1,2,3,3]
     * 输出：[1,2,3]
     *
     *
     * 提示：
     *
     * 链表中节点数目在范围 [0, 300] 内
     * -100 <= Node.val <= 100
     * 题目数据保证链表已经按升序 排列
     */
    public static ListNode deleteDuplicates(ListNode head) {
        if (head == null || head.next == null){
            return head;
        }
        ListNode first = head,second = head.next;
        while (second != null){
            int fVal = first.val;
            int sVal = second.val;
            if (fVal == sVal){
                first.next = second.next;
            } else {
                first = first.next;
            }
            second = second.next;
        }
        return  head;
    }

    /**
     *
     */
}
